The lookup table used by get_app_from_window_pid contained only pids of
apps launched by gnome-shell itself, but not pids of apps running before
gnome-shell was (re-)started. Also the pids in that table might not even
be the pid of the process that is actually showing the window if wrapper
scripts are used.
Instead use shell_window_tracker_get_app_from_pid which uses the pids
from the windows themselves.
This removes the only use of launched_pid_to_app which will be removed
in the following commit.
This fixes: https://bugzilla.gnome.org/show_bug.cgi?id=736527
* @window: a #MetaWindow
*
* Check if the pid associated with @window corresponds to an
- * application we launched.
+ * application.
*
* Return value: (transfer full): A newly-referenced #ShellApp, or %NULL
*/
if (pid == -1)
return NULL;
- result = g_hash_table_lookup (tracker->launched_pid_to_app, GINT_TO_POINTER (pid));
+ result = shell_window_tracker_get_app_from_pid (tracker, pid);
if (result != NULL)
g_object_ref (result);